// samsting : this file is auto create.

#ifndef ALIYUN_Ecs_DescribeInstancesRequest_H_
#define ALIYUN_Ecs_DescribeInstancesRequest_H_

#include "core/rpc_acs_request.h"

namespace aliyun { namespace Ecs {

class DescribeInstancesRequest : public RpcAcsRequest {
public:
  DescribeInstancesRequest();

  int64 GetOwnerId(void) const;
  void  SetOwnerId(int64 OwnerId);

  const string& GetResourceOwnerAccount(void) const;
  void          SetResourceOwnerAccount(const string& ResourceOwnerAccount);

  int64 GetResourceOwnerId(void) const;
  void  SetResourceOwnerId(int64 ResourceOwnerId);

  const string& GetVpcId(void) const;
  void          SetVpcId(const string& VpcId);

  const string& GetVSwitchId(void) const;
  void          SetVSwitchId(const string& VSwitchId);

  const string& GetZoneId(void) const;
  void          SetZoneId(const string& ZoneId);

  const string& GetInstanceNetworkType(void) const;
  void          SetInstanceNetworkType(const string& InstanceNetworkType);

  const string& GetSecurityGroupId(void) const;
  void          SetSecurityGroupId(const string& SecurityGroupId);

  const string& GetInstanceIds(void) const;
  void          SetInstanceIds(const string& InstanceIds);

  int  GetPageNumber(void) const;
  bool SetPageNumber(int PageNumber);

  int  GetPageSize(void) const;
  bool SetPageSize(int PageSize);

  const string& GetInnerIpAddresses(void) const;
  void          SetInnerIpAddresses(const string& InnerIpAddresses);

  const string& GetPrivateIpAddresses(void) const;
  void          SetPrivateIpAddresses(const string& PrivateIpAddresses);

  const string& GetPublicIpAddresses(void) const;
  void          SetPublicIpAddresses(const string& PublicIpAddresses);

  const string& GetOwnerAccount(void) const;
  void          SetOwnerAccount(const string& OwnerAccount);

  const string& GetInstanceChargeType(void) const;
  void          SetInstanceChargeType(const string& InstanceChargeType);

  const string& GetInternetChargeType(void) const;
  void          SetInternetChargeType(const string& InternetChargeType);

  const string& GetInstanceName(void) const;
  void          SetInstanceName(const string& InstanceName);

  const string& GetImageId(void) const;
  void          SetImageId(const string& ImageId);

  const string& GetStatus(void) const;
  void          SetStatus(const string& Status);

  const string& GetLockReason(void) const;
  void          SetLockReason(const string& LockReason);

  const string& GetFilter_1_Key(void) const;
  void          SetFilter_1_Key(const string& Filter_1_Key);

  const string& GetFilter_2_Key(void) const;
  void          SetFilter_2_Key(const string& Filter_2_Key);

  const string& GetFilter_3_Key(void) const;
  void          SetFilter_3_Key(const string& Filter_3_Key);

  const string& GetFilter_4_Key(void) const;
  void          SetFilter_4_Key(const string& Filter_4_Key);

  const string& GetFilter_1_Value(void) const;
  void          SetFilter_1_Value(const string& Filter_1_Value);

  const string& GetFilter_2_Value(void) const;
  void          SetFilter_2_Value(const string& Filter_2_Value);

  const string& GetFilter_3_Value(void) const;
  void          SetFilter_3_Value(const string& Filter_3_Value);

  const string& GetFilter_4_Value(void) const;
  void          SetFilter_4_Value(const string& Filter_4_Value);

  bool GetDeviceAvailable(void) const;
  void SetDeviceAvailable(bool DeviceAvailable);

  bool GetIoOptimized(void) const;
  void SetIoOptimized(bool IoOptimized);

  const string& GetTag_1_Key(void) const;
  void          SetTag_1_Key(const string& Tag_1_Key);

  const string& GetTag_2_Key(void) const;
  void          SetTag_2_Key(const string& Tag_2_Key);

  const string& GetTag_3_Key(void) const;
  void          SetTag_3_Key(const string& Tag_3_Key);

  const string& GetTag_4_Key(void) const;
  void          SetTag_4_Key(const string& Tag_4_Key);

  const string& GetTag_5_Key(void) const;
  void          SetTag_5_Key(const string& Tag_5_Key);

  const string& GetTag_1_Value(void) const;
  void          SetTag_1_Value(const string& Tag_1_Value);

  const string& GetTag_2_Value(void) const;
  void          SetTag_2_Value(const string& Tag_2_Value);

  const string& GetTag_3_Value(void) const;
  void          SetTag_3_Value(const string& Tag_3_Value);

  const string& GetTag_4_Value(void) const;
  void          SetTag_4_Value(const string& Tag_4_Value);

  const string& GetTag_5_Value(void) const;
  void          SetTag_5_Value(const string& Tag_5_Value);

private:
  int64  OwnerId_;
  string ResourceOwnerAccount_;
  int64  ResourceOwnerId_;
  string VpcId_;
  string VSwitchId_;
  string ZoneId_;
  string InstanceNetworkType_;
  string SecurityGroupId_;
  string InstanceIds_;
  int    PageNumber_;
  int    PageSize_;
  string InnerIpAddresses_;
  string PrivateIpAddresses_;
  string PublicIpAddresses_;
  string OwnerAccount_;
  string InstanceChargeType_;
  string InternetChargeType_;
  string InstanceName_;
  string ImageId_;
  string Status_;
  string LockReason_;
  string Filter_1_Key_;
  string Filter_2_Key_;
  string Filter_3_Key_;
  string Filter_4_Key_;
  string Filter_1_Value_;
  string Filter_2_Value_;
  string Filter_3_Value_;
  string Filter_4_Value_;
  bool   DeviceAvailable_;
  bool   IoOptimized_;
  string Tag_1_Key_;
  string Tag_2_Key_;
  string Tag_3_Key_;
  string Tag_4_Key_;
  string Tag_5_Key_;
  string Tag_1_Value_;
  string Tag_2_Value_;
  string Tag_3_Value_;
  string Tag_4_Value_;
  string Tag_5_Value_;

};

} } // namespace aliyun { namespace Ecs {

#endif // #ifndef ALIYUN_Ecs_DescribeInstancesRequest_H_

// end of file 
